home *** CD-ROM | disk | FTP | other *** search
/ Pocket PC Game Programming / Pocket PC Game Programming.iso / source.exe / CH15 / GameLibrary / CSprite.h < prev    next >
Encoding:
C/C++ Source or Header  |  2001-02-05  |  1.8 KB  |  69 lines

  1. //////////////////////////////////////////////////////////////////////
  2. // Pocket PC Game Programming
  3. // Chapter 9: Sprites and Animation
  4. //
  5. // CSprite Header File
  6. //
  7. // This file includes the CSprite class definition.
  8. //
  9. //////////////////////////////////////////////////////////////////////
  10.  
  11. #pragma once
  12.  
  13. #include "stdafx.h"
  14. #include "CBitmap.h"
  15.  
  16. class CSprite : public CBitmap
  17. {
  18. private:
  19.     int X_Loc, Y_Loc;
  20.     int X_Dir, Y_Dir;
  21.     int X_Spd, Y_Spd;
  22.  
  23.     HBITMAP hUnder;
  24.     HDC hdcUnder;
  25.     BOOL bUnderSaved;
  26.     BOOL bAlive;
  27.     LPRECT DestRect;
  28.     RECT *Rect1;
  29.     RECT *Rect2;
  30.  
  31.     void Init();
  32.  
  33. public:
  34.     CSprite();
  35.     CSprite(HDC hdc);
  36.     virtual ~CSprite();
  37.     BOOL SaveUnder(HDC hdc);
  38.     BOOL RestoreUnder(HDC hdc);
  39.     virtual BOOL TransBlit(COLORREF clrTrans);
  40.     virtual BOOL BitBlit();
  41.     virtual BOOL BitBlit(HDC hdc);
  42.     virtual BOOL StretchBlit(int dx, int dy);
  43.     virtual int ImageWidth() { return CBitmap::ImageWidth(); };
  44.     virtual int ImageHeight() { return CBitmap::ImageHeight(); };
  45.     virtual BOOL Intersected(CSprite *Sprite, POINT &pt);
  46.     virtual BOOL Intersected(CSprite *Sprite, RECT &rt);
  47.     
  48.     BOOL IsAlive() { return bAlive; };
  49.     void SetAlive(BOOL bNew) { bAlive = bNew; };
  50.     int GetX() { return X_Loc; };
  51.     void SetX(int vNew) { X_Loc = vNew; };
  52.     void IncX(int vNew) { X_Loc += vNew; };
  53.     int GetY() { return Y_Loc; };
  54.     void SetY(int vNew) { Y_Loc = vNew; };
  55.     void IncY(int vNew) { Y_Loc += vNew; };
  56.     int GetXDir() { return X_Dir; };
  57.     void SetXDir(int vNew) { X_Dir = vNew; };
  58.     int GetYDir() { return Y_Dir; };
  59.     void SetYDir(int vNew) { Y_Dir = vNew; };
  60.     int GetXSpeed() { return X_Spd; };
  61.     void SetXSpeed(int vNew) { X_Spd = vNew; };
  62.     int GetYSpeed() { return Y_Spd; };
  63.     void SetYSpeed(int vNew) { Y_Spd = vNew; };
  64.  
  65. };
  66.  
  67.  
  68.  
  69.